In a parallel computing system, Message Passing Interface (MPI) is used for communication between processes. The communication using MPI includes one-to-one communication to be executed between two processes, collective communication in which two or more processes are involved in the same communication at the same time, and the like.
In an example of the collective communication, a Barrier operation is used. The Barrier operation is used for synchronization between processes. Processes that participate in the Barrier operation stand by until all the processes reach the Barrier operation. FIG. 13 is a diagram describing the Barrier operation. FIG. 13 illustrates a case where a dissemination algorithm is used as a communication algorithm.
As illustrated in FIG. 13, if the number of processes is 4, the Barrier operation is executed in two steps. In the step #1, each of the processes transmits, to a process with a rank number ((a rank number of the transmitting process+2^ 0) % the number of the processes), a reaching notification indicating that the transmitting process reached the Barrier operation. “Rank numbers” are numbers identifying the processes. In the case where the number of the processes is 4, the rank numbers are in a range of 0 to 3. A symbol “A” indicates exponentiation and “x % y” indicates a remainder of the division of x by y. In the step #2, each of the processes transmits, to a process with a rank number ((a rank number of the transmitting process+2^ 1) % the number of the processes), a reaching notification indicating that the transmitting process reached the Barrier operation.
For example, a process #0 receives a reaching notification from a process #3 in the step #1 and thereby recognizes that the process #3 reached the Barrier operation. The process #0 receives a reaching notification from a process #2 in the step #2 and thereby recognizes that the process #2 reached the Barrier operation. Since the process #2 receives a reaching notification from the process #1 in the step #1, the process #0 recognizes that the process #1 reached the Barrier operation. The other processes recognize that the processes reached the Barrier operation in the same manner. Since all the processes reached the Barrier operation, the Barrier operation is completed in the two steps.
As related art, the following technique is known: a technique for switching a processor core between an interruption mode and a polling mode based on a static configuration switching rule and improving a process efficiency in a process executed on a network I/O request in a multi-processor core system.
In addition, the following technique is known: a technique for reducing a load to be applied to a CPU by controlling, by polling from a CPU for controlling image processing to a processor, a process that is executed by the processor executing the image processing and for which a time period is able to be calculated and by controlling another process by interruption from the processor to the CPU.
As examples of related art, Japanese National Publication of International Patent Application No. 2014-531081 and Japanese Laid-open Patent Publication No. 2006-268092 are known.